package vista.lugaresYPistas;

import java.util.List;

import control.lugaresYPistas.ControladorEstablecimientos;

import vista.HerramientasConsola;

import modelo.lugaresYPistas.Establecimiento;
import modelo.policiales.Policia;

public class VistaEstablecimientosConsola {


	private List<Establecimiento> establecimientos;
	private ControladorEstablecimientos controlEstablecimientos;

	public VistaEstablecimientosConsola(Policia policia) {
		this.establecimientos = policia.getCapitalActual().getEstablecimientos();
		this.controlEstablecimientos = new ControladorEstablecimientos();
	}

	public int imprimirCapitalesEnMenuNumerico() {
		
		StringBuilder menuNumerico = new StringBuilder();
		int opcion = 1;
		for(Establecimiento establecimiento: this.establecimientos)
		{
			menuNumerico.append(opcion + ") "+ establecimiento.getNombre() + "\n");
			opcion ++;
		}
		HerramientasConsola.imprimir("Establecimientos: ");
		HerramientasConsola.imprimir(menuNumerico.toString());
		HerramientasConsola.imprimir(opcion + ") Volver\n ");

		return opcion;
	}

	public void verEstablecimientos(Policia policia) {
		
		int opciones = this.imprimirCapitalesEnMenuNumerico();
		HerramientasConsola.imprimir("Ingrese opcion de establecimiento a visitar");
		String opcion = HerramientasConsola.pedirOpcionEntre(1, opciones);
		if(Integer.parseInt(opcion) != opciones)
			this.controlEstablecimientos.pedirRespuestaEnEstablecimiento(policia, this.establecimientos.get(Integer.valueOf(opcion)-1));
		
	}
	
	public void actualizarEstablecimientos(Policia policia){
		this.establecimientos = policia.getCapitalActual().getEstablecimientos();
	}
	
}
